NLP 是 人工智慧(AI)與計算語言學的交叉領域,目標是讓電腦能「理解」與「生成」人類語言。人類語言和電腦語言(0 與 1)不同,NLP 的原理就是設計一系列方法,將文字轉換成電腦可以處理的 數值表示,再用演算法進行分析、理解或生成。
早期方法:
就像給每個字一個獨一無二的編號。例如,「蘋果」是 001,「香蕉」是 002。這種方法雖然簡單,但電腦不知道「蘋果」和「香蕉」是同類水果,也無法區分「蘋果」是公司還是水果。
現代方法 (詞向量):
我們不再給每個字一個獨立編號,而是給它一組數字,這組數字就叫做詞向量(Word Embedding)。厲害的是,語意相近的詞,它們的數字也會很接近。例如,向量運算可以得出「國王 - 男人 + 女人 ≈ 女王」這種神奇的關係。
目前主流 (上下文相關的向量):
現在的方法更進一步,它會根據「上下文」來給予數字。例如,在「我喜歡吃蘋果」這句話裡,「蘋果」會被轉換成代表水果的向量;但在「我使用蘋果電腦」這句話裡,「蘋果」會被轉換成代表公司的向量。這讓電腦能精準地理解一詞多義。
早期方法 (詞袋模型):
這就像把一篇文章裡所有詞都裝進一個袋子,只計算每個詞出現的次數,而不考慮它們的順序。電腦會知道「你喜歡我」和「我喜歡你」這兩句話有相同的詞,但無法理解它們的語法和意義是不同的。
目前主流 (Transformer 模型):
這是當前最先進的技術。它引入了「自注意力機制 (Self-Attention)」。簡單來說,當電腦處理一個詞時,它會「回頭看」句子裡所有其他相關的詞。例如,在理解「這台電腦功能很強大,它...」這句話時,電腦會讓「它」這個詞特別注意「電腦」,而不是其他詞。這讓它能輕鬆處理長句,並理解詞與詞之間的關聯,這也是 ChatGPT 能夠生成流暢內容的核心原因。
情感分析:判斷一段評論是正面還是負面。
文本分類:將信件歸類為垃圾郵件或正常信件。
機器翻譯:將中文文章翻譯成英文。
問答系統:從一篇長文章中找到問題的答案。
對話生成:根據你的問題,生成一段有邏輯的回覆。